package tinsiec;

/**
 * klasa kontrolujaca kompletnosc przesylanych wiadomosci
 * @author Marek Duda
 */
public class XMLModule {

    /**
     * domyslny konstruktor
     */
    public XMLModule(){}

    /**
     * dodaje do wiadomosci znaczniki xml
     * @param msg text wiadomosci
     * @return  wiadomosc z dodanymi znacznikami
     */
    public String parseMessage(String msg){
        return "<msg>" + msg + "</msg>";
    }

    /**
     * usuwa znaczniki z poczaku i z konca wiadomosci
     * @param msg wiadomosc ze znacznikami
     * @return wiadomosc bez znacznikow
     */
    public String unparseMessage(String msg){
        // od 5, ponieważ <msg> ma 5 znakow
        return msg.substring(5, msg.lastIndexOf("</msg>"));
    }

    /**
     * sprawdza komoletnosc wiadomosci na podstawie
     * posiadania przez nia kompletu znacznikow nadanych przy parsowaniu
     * @param msg sprawdzana wiadomosc
     * @return true jesli wiadomosc jest kompletna, w.p.p. false
     */
    public boolean checkMessage(String msg){
        if(msg.startsWith("<msg>") && msg.endsWith("</msg>")){
            return true;
        }
        else
            return false;
    }
}
